When a mobile entity (ME) (also commonly referred to in the art as a mobile node) such as a radio, phone, laptop, Personal Digital Assistant (PDA), etc., desires to communicate with another mobile entity (for instance a second ME connected to a home network of the first ME) using a packet data network, the first ME establishes a session (also known as a call) with the second ME. In establishing a session, the first ME may further need to obtain network access configuration parameters to communicate using the network. Network access configuration parameters are parameters that control how a mobile entity accesses the network at its point of attachment and how the mobile entity transmits and receives packets on the network, wherein a packet is defined generally herein as a message transmitted over a network from one entity to another and may include, but is not limited to, an IP datagram. Examples of network access configuration parameters are an Internet Protocol (IP) address, security policies such as whether encryption and/or a Virtual Private Network (VPN) will be used for the session, etc.
One example of a packet data network is a network structured in accordance with the GPRS (General Packet Radio Services) standard. The GPRS standard is described, for example, in European Telecommunications Standards Institute (ETSI) document number EN 301 347 v7.5.1 and all related versions (collectively referred to hereinafter as the GPRS standard or standard GPRS). When a ME wants to establish a session using a GPRS network, the ME can connect to a Global System for Mobile (GSM) radio network, for instance, which in turn connects to GPRS infrastructure via an entity in the GPRS infrastructure called a Serving GPRS Support Node (SGSN). The SGSN in turn communicates with another entity comprising the GPRS infrastructure called a Gateway GPRS Support Node (GGSN). Before the session can be created, a data structure called a PDP (Packet Data Protocol) Context is established for the ME in both the SGSN and the GGSN using standard GPRS, and the PDP context comprises the mobile entity's session information for the session. This session information for example includes, but is not limited to, an IP address that the ME will be using during the session. In some instances, the GGSN may need to obtain the IP address (along with other network access configuration parameters) from a server in the home network running DHCP in accordance with the Internet Engineering Task Force (IETF) Request for Comments (RFC) 2131 titled “Dynamic Host Configuration Protocol” also referred to herein as standard DHCP.
The known way for establishing a session and for requesting network access configuration parameters has some shortcomings. For example, with respect to session creation, the ME has to wait until all four messages in a four-way handshake between the GGSN and the DHCP server (e.g., DHCPDISCOVER, DHCPOFFER, DHCPREQUEST AND DHCPACK) are exchanged before the session creation can be completed. This may not satisfy the response time needs of some customers.
Moreover with respect to IP address assignments, a GGSN may assign an IP address to an ME without requesting DHCP service in response to a proposed IP address request from the ME (e.g., where the proposed IP address is a static IP address configuration in the ME). Subsequently, another ME may submit a non-proposed IP address request wherein the GGSN requests DHCP service for dynamic assignment of an IP address for this ME. In some cases, the DHCP server may assign the same IP address as the IP address that is statically configured in the initial ME. This overlap in IP addresses may result in future non-proposed IP address requests to be rejected since the same IP address will be assigned by the DHCP server to any future incoming MEs, and the GGSN will reject the PDP context requests associated with those future incoming MEs because that IP address has already been assigned to the first ME.
Thus, there exists a need for methods and apparatus in a packet data network that address the above shortcomings.